﻿// 502 学生信息管理.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
#include <unordered_map>
#include <string>
#include <vector>
using namespace std;
/*
http://oj.daimayuan.top/course/7/problem/482

蜗蜗学校开学啦，现在有一批新入学的学生信息需要登记。

每名学生的基础信息包含年龄、身高和专业编号，现在需要你完成能够快速查询学生信息的功能。

输入格式
第一行包含两个整数 n,m
，表示学生总数和查询总次数。

接下来 n行，每行包含一个字符串和三个整数 si,ai,bi,ci
，分别表示名字、年龄、身高和专业编号。

接下来 m行，每行一个字符串，表示要查询的学生姓名。

输入保证每名学生的名字各不相同，并且都是由大小写字母组成的字符串，名字的长度不超过 10。

输出格式
输出 m行，分别对应每次查询。

如果有本次查询的名字的学生，则在本行输出三个整数，表示这个学生的年龄、身高和专业编号。

如果查不到这个学生，本行输出三个 -1。

样例输入
2 3
Alice 20 165 100001
Bob 26 180 100002
Bob
Alice
Eve
样例输出
26 180 100002
20 165 100001
-1 -1 -1
数据规模
对于 100%
 的数据，保证 1≤n,m≤105,1≤ai≤100,100≤bi≤250,1≤ci≤106。
*/


int n, m;
unordered_map<string, vector<int>> mm;


int main()
{	
	cin >> n >> m;
	for (int i = 0; i < n; i++) {
		string s; int a, b, c;
		cin >> s >> a >> b >> c;
		mm[s].push_back(a); mm[s].push_back(b); mm[s].push_back(c);
	}

	for (int i = 0; i < m; i++) {
		string q; cin >> q;
		if (mm.count(q))
			cout << mm[q][0] << " " << mm[q][1] << " " << mm[q][2] << endl;
		else
			cout << "-1 -1 -1" << endl;
	}

	return 0;
}

 